Typically, removable media libraries, e.g., tape libraries, contain multiple removable media storage devices, e.g., tape drives. The devices typically are referenced in the library by an address. In some configurations, the storage devices may be connected to multiple hosts, e.g., via a storage area network (SAN). Each storage device to which a host has a connection is referenced on the host by a device file.
Accessing and using a storage device, such as a tape drive, requires four data values: library, device address within library, host, and device file on the host. With this data, a data mover (e.g., a backup application or system) or a media and library management application or system, can perform such operations as allocating a storage device for use in performing a desired backup or other operation, mounting a specified volume of media on the device, and causing a host having a connection to the device to read data from and/or write data to a media volume mounted on the device. To perform such operations, it is necessary for a data mover and/or media and library management application or system to receive or create a mapping of which device files on the host side correspond to which storage devices as they are known on the library side.
Currently, this mapping is either input manually or discovered by a laborious process of mounting a volume of media on each storage device in succession and checking each host to determine which device file on the host, if any, shows an “on line” status indicating it is the device file on the host that is associated with the storage device on which the volume of media was mounted. Depending on the environment (e.g., number of hosts, libraries, and devices and how they are connected), this process can be time consuming. In addition, changes to the storage network and/or connections, such as adding or removing a new device, library, and/or host, may result in the mapping no longer being accurate, potentially resulting in errors and the need to repeat the inefficient process of creating the mapping. For example, in the case of hosts running a Microsoft™ operating system such as Microsoft™ Windows NT™, the operating system upon reboot of the host system may assign a new (different) device file name to a storage device, e.g., if a new storage device were connected in a position in front of an existing device.
Therefore, there is a need for a better way to create, verify, and update the mapping between the addresses by which storage devices are known to their respective libraries and the corresponding device file by which each device is known to the respective hosts having a connection to the device.